#pragma once

#include "stdafx.h"

class Graphics {
	public:
		Graphics();
		~Graphics();

		SDL_Texture *loadSurface(const char* path);
		SDL_Texture *getTexture(const char* txt);

		//This function only draws, it will not modify anything
		void drawSurface(int x, int y, SDL_Texture *texture, const SDL_Rect &clip) const;

		bool freeTexture(SDL_Texture *texture);

	private:
		SDL_Window *rWindow;
		SDL_Renderer *r;

		std::map<const char *, SDL_Texture *> textures;
		std::map<const char *, SDL_Texture *>::iterator itr;
};